package maple.thelittleredbook.logging.annotation;

import java.lang.annotation.*;

/**
 * 系统日志注解
 * 用于标记需要记录系统日志的方法
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface SystemLog {

    /**
     * 操作描述
     * @return 操作描述信息
     */
    String operation();

    /**
     * 是否保存请求参数
     * @return true-保存，false-不保存
     */
    boolean saveRequestParam() default true;

    /**
     * 是否保存响应数据
     * @return true-保存，false-不保存
     */
    boolean saveResponseData() default true;
}